import customtkinter as ctk


class HomeView(ctk.CTkFrame):
    """
    应用程序的主页视图（欢迎界面）。
    """

    def __init__(self, master):
        super().__init__(master)

        # 配置网格布局，使其内容居中
        self.grid_columnconfigure(0, weight=1)
        self.grid_rowconfigure((0, 2), weight=1)  # 让上下空间更大，内容垂直居中
        self.grid_rowconfigure(1, weight=0)

        # 创建一个容器Frame来放置文本，使其聚合在一起
        container = ctk.CTkFrame(self, fg_color="transparent")
        container.grid(row=1, column=0, padx=20, pady=20)

        # --- 界面元素 ---
        # 1. 大标题
        title_label = ctk.CTkLabel(
            container,
            text="欢迎使用财务工具箱",
            font=ctk.CTkFont(size=32, weight="bold")
        )
        title_label.pack(padx=20, pady=(10, 20))

        # 2. 描述文本
        description_text = (
            "模块化的财务应用，旨在帮助您轻松处理日常财务任务。\n\n"
            "请从左侧导航栏选择一个功能开始使用。"
        )
        description_label = ctk.CTkLabel(
            container,
            text=description_text,
            font=ctk.CTkFont(size=14),
            wraplength=450,  # 文本宽度超过450像素时自动换行
            justify="center"  # 文本居中对齐
        )
        description_label.pack(padx=20, pady=10)

        # 3. 版本信息
        version_label = ctk.CTkLabel(
            self,  # 放置在主Frame的底部
            text="Version 1.0.0 | By 融大科技有限公司",
            font=ctk.CTkFont(size=12),
            text_color="gray"
        )
        version_label.grid(row=2, column=0, padx=20, pady=10, sticky="s")